package com.hc.pingtan.model;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * ░░░░░░░░░░░░░░░░░░░░░░░░▄░░
 * ░░░░░░░░░▐█░░░░░░░░░░░▄▀▒▌░
 * ░░░░░░░░▐▀▒█░░░░░░░░▄▀▒▒▒▐
 * ░░░░░░░▐▄▀▒▒▀▀▀▀▄▄▄▀▒▒▒▒▒▐
 * ░░░░░▄▄▀▒░▒▒▒▒▒▒▒▒▒█▒▒▄█▒▐
 * ░░░▄▀▒▒▒░░░▒▒▒░░░▒▒▒▀██▀▒▌
 * ░░▐▒▒▒▄▄▒▒▒▒░░░▒▒▒▒▒▒▒▀▄▒▒
 * ░░▌░░▌█▀▒▒▒▒▒▄▀█▄▒▒▒▒▒▒▒█▒▐
 * ░▐░░░▒▒▒▒▒▒▒▒▌██▀▒▒░░░▒▒▒▀▄
 * ░▌░▒▄██▄▒▒▒▒▒▒▒▒▒░░░░░░▒▒▒▒
 * ▀▒▀▐▄█▄█▌▄░▀▒▒░░░░░░░░░░▒▒▒
 *
 * @author zeb
 * @version 1.0
 * @date 2021/11/2 20:59
 * @description SxoCouponVo类
 **/
@Data
public class SxoCouponVo implements Serializable {

    private static final long serialVersionUID = 7500138223817365229L;

    /**
     * 订单ID
     */
    @ApiModelProperty(value = "优惠券ID")
    private Integer id;

    /**
     * 名称
     */
    @ApiModelProperty(value = "优惠券名称")
    private String name;

    /**
     * 描述
     */
    @ApiModelProperty(value = "描述")
    private String desc;

    /**
     * 优惠券颜色（0红色, 1紫色, 2黄色, 3蓝色, 4橙色, 5绿色, 6咖啡色）
     */
    @ApiModelProperty(value = "优惠券颜色（0红色, 1紫色, 2黄色, 3蓝色, 4橙色, 5绿色, 6咖啡色）")
    private Integer bgColor;

    /**
     * 优惠券类型（0满减劵, 1折扣劵）
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Boolean type;

    /**
     * 减免金额 | 折扣系数 0-10，9.5代表9.5折，0或空代表无折扣
     */
    @ApiModelProperty(value = "优惠券颜色")
    private BigDecimal discountValue;

    /**
     * 优惠券类型（0领取生效, 1固定日期）
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Boolean expireType;

    /**
     * 有效小时（单位 时）
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Integer expireHour;

    /**
     * 限时开始时间
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Integer fixedTimeStart;

    /**
     * 限时结束时间
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Integer fixedTimeEnd;

    /**
     * 订单最低金额
     */
    @ApiModelProperty(value = "优惠券颜色")
    private BigDecimal whereOrderPrice;

    /**
     * 使用限制（0不限, 1商品分类, 2商品）
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Boolean useLimitType;

    /**
     * 关联商品分类id 或 关联商品id（以json存储）
     */
    @ApiModelProperty(value = "优惠券颜色")
    private String useValueIds;

    /**
     * 限制发放总数量（0则不限）
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Integer limitSendCount;

    /**
     * 已发放总数量
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Integer alreadySendCount;

    /**
     * 排序
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Integer sort;

    /**
     * 是否启用（0否，1是）
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Boolean isEnable;

    /**
     * 是否开放用户领取（0否, 1是）
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Boolean isUserReceive;

    /**
     * 是否注册即发放（0否, 1是）
     */
    @ApiModelProperty(value = "优惠券颜色")
    private Boolean isRegsterSend;


    /**
     * 用户领取状态
     */
    @ApiModelProperty(value = "用户领取状态（0未领取 1已领取）")
    private Integer userStatus = 0;

    @ApiModelProperty(value = "是否有效（0否，1是）")
    private Integer isValid = 0;

    @ApiModelProperty(value = "是否已过期（0否，1是）")
    private Integer isUse = 0;

}
